class NoParens {
	def getProperty(String propertyName) {
		if(metaClass.hasProperty(this, propertyName)) {
			return metaClass.getProperty(this, propertyName)
		}

		// 否则就 invoke 
		invokeMethod(propertyName, null)
	}

}

// 子类就能享受这个特性了
class ProperUser extends NoParens {
	boolean existingProperty = true;
}

def user = new ProperUser()
assert user.existingProperty
assert user.toString() == user.toString
